﻿using FlyingHat.Common.Global;
using FlyingHat.Model.Enums;
using FlyingHat.Model.Models;
using FlyingHat.Model.Models.Global;
using FlyingHat.Office.Import;

namespace FlyingHat.Service.IService
{
    public interface IUserService : IDependency
    {
        Task<UserModel?> Login(string userName, string password);
        Task<IReturnModel> StudentList(string? userName, UserStatus? userStatus, int page, int limit);
        Task<IReturnModel> AddOrUpdateStudent(UserModel user);
        Task<IReturnModel> ModifyPasword(List<long> ids, string password);
        /// <summary>
        /// 软删除
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        Task<IReturnModel> BatchRemoveStudent(List<long> ids);
        Task<IReturnModel> SetStatus(string? reason, int? blockDay, UserStatus setUserStatus, List<long> ids);
        Task<IReturnModel> ImportStudent(List<Student> students);
    }
}
